even if it happens to be a local directory.
If we located the Linux tree by deriving the path from "hg path
default" and it is a local path then prepend "file://" to prevent us
trying to symlink it.
Unfortunately mercurial doesn't understand file:// URLs so we have to
strip it off again before calling hg clone.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
fi
echo "$ME: Found ${BASE}/${REPO}" 1>&2
-echo ${BASE}/${REPO}
+
+# If ${BASE}/${REPO} is a local directory then prepend file:// so that
+# the test in src.hg-clone will fail and we will clone instead of
+# linking this repository. We only want to link repositories which
+# were found via LINUX_SRC_PATH.
+if [ -d "${BASE}/${REPO}" ] ; then
+ echo "file://${BASE}/${REPO}"
+else
+ echo ${BASE}/${REPO}
+fi
exit 0
ln -s $${__repo} $(LINUX_SRCDIR) ; \
else \
echo "Cloning $${__repo} to $(LINUX_SRCDIR)." ; \
- $(HG) clone $${__repo} $(LINUX_SRCDIR) ; \
+ $(HG) clone $${__repo#file://} $(LINUX_SRCDIR) ; \
fi ; \
else \
__parent=$$($(HG) -R $(LINUX_SRCDIR) path default) ; \